// 当前这个模块：API进行统一管理
import requests from "./request"
import mockRequests from "./mockAjax"

// 三级联动接口
// /api/product/getBaseCategoryList get 无参数


// 分别暴露
export const reqgCategoryList = ()=> requests({url:'/product/getBaseCategoryList',method:'get'})

//发请求:axios发请求返回结果Promise对象
// 获取banner(Home首页的轮播图)
// 注意这里不要写成默认暴露，是const
//TOOD为什么用get  {mockRequests.get('/banner')}请求就会undefined，用统一方式获取就不会
export const reqGetBannerList = () => mockRequests({ url: '/banner', method: 'get' })

// 返回数据unde，将api/index文件中的reqGet~~（）中的函数体改为return mockRequests({ url: '/banner', method: 'get' });

// 获取floor数据
export const reqFloorList= () => mockRequests({url:'/floor',method: 'get'})

// 静态组件拆分完就写接口
//获取搜索模块数据 地址:/api/list 请求方式:post 参数:需要带参数
//当前这个函数需不需要接受外部传递参数
//当前这个接口，给服务器传递参数params，至少是一个空对象,就是调用reqGetSearchinfo的时候必须
export const reqGetSearchInfo = (params)  => {return requests({url:'/list',method: 'post', data: params})};

// 获取产品详情信息的接口 url: /api/item/{ skuId } 请求方式： get

export const reqGoodsInfo = (skuId)=> requests({
    url: `/item/${skuId}`,method: "get"
})

// 将产品添加到购物车中 （获取更新某一个产品的个数）
// /cart/addToCart/{ skuId }/{ skuNum }
export const  reqAddOrUpdateShopCart = (skuId,skuNum) => requests({url: `/cart/addToCart/${skuId}/${skuNum}`,method: 'post'})

// 获取购物车列表的数据接口
//URL:/cart/cartList
export const reqCartList = () => requests({url:'/cart/cartList',method: 'get'})


// 删除购物车产品的接口
// /api/cart/deleteCart/{skuId} method: "delect"
export const reqDeleteCartById = (skuId) => requests({url: `/cart/deleteCart/${skuId}` ,method: 'delete'})

// 修改商品选中的状态
// url：/cart/checkCart/{skuID}/{isChecked} method:get  接口先写，写完写vuex
export const reqUpdataCheckedByid = (skuId,isChecked) => requests({url: `/cart/checkCart/${skuId}/${isChecked}`,method:'get'})

// 获取验证码
// URL:/user/passport/sendCode/{phone]
export const reqGetCode = (phone) => requests({url: `/user/passport/sendCode/${phone}`,method:'get'})


// 注册的接口
// url:/user/passport/register method:post phone code password
export const reqUserRegister = (data) => requests({url: '/user/passport/register',data,method:'post'})

// 登录接口
// URL:/user/passport/login method:post phone password
export const reqUesrLogin = (data) => requests({url:'/user/passport/login',data,method:'post'})

// 获取用户信息【需要带着用户的token向服务器要用户信息】
// URL:api/user/passport/auth/getUserInfo method: get
export const reqUserInfo = () => requests({url: 'user/passport/auth/getUserInfo',method:'get'})


// 退出登录
// URL:/user/passport/logout
export const reqLogout = () => requests({url:'/user/passport/logout',method: 'get'})


// 获取用户地址信息,get请求可以不带参数
// /URL:/api/user/userAddress/auth/findUserAddressList method: get
export const reqAddressInfo = () => requests({url:'user/userAddress/auth/findUserAddressList',method: 'get'})

// 获取商品清单
// URL:/api/order/auth/trade method: get
export const reqOrderInfo = () => requests({url: '/order/auth/trade',method: 'get'});


// 提交订单的接口
//URL:/api/order/auth/submitOrder?tradeNo={tradeNo} method:post tradeNo是交易编号
export const reqSubmitOrder = (tradeNo,data) => requests({url:`/order/auth/submitOrder?tradeNo=${tradeNo}`,data,method:'post'})

// 获取支付信息
// URL:/api/payment/weixin/createNative/{orderId} GET
export const reqPayInfo = (orderId) => requests({url: `/payment/weixin/createNative/${orderId}`,method: 'get'})

// 获取支付订单状态
//获取支付订单状态
//URL:/api/payment/weixin/queryPayStatus/{orderId} get
export const reqPayStatus = (orderId) => requests({url:`/payment/weixin/queryPayStatus/${orderId}`,method: 'get'});
 

